/*
 * SyncQueue.h
 *
 *  Created on: 2015-12-7
 *      Author: Administrator
 */

#ifndef SYNCQUEUE_H_
#define SYNCQUEUE_H_
#include <queue>
#include "pthread.h"
using namespace std;

/**
 * 线程安全的队列，不建议存放局部变量的指针
 */
class SyncQueue {
private:
	queue<const void*> mQueue;
	pthread_mutex_t m_mutex;
public:
	SyncQueue();
	virtual ~SyncQueue();
	void push(const void* object);
	const void* pop();
};

#endif /* SYNCQUEUE_H_ */
